package com.turnengine.client.global.game.bean;

import com.javabi.codebuilder.generated.IGeneratedBean;
import com.turnengine.client.global.game.enums.GameStatus;

/**
 * The I Game Instance.
 */
public interface IGameInstance extends IGeneratedBean, Comparable<IGameInstance> {

	/**
	 * Returns the id.
	 * @return the id.
	 */
	int getId();

	/**
	 * Returns the name.
	 * @return the name.
	 */
	String getName();

	/**
	 * Returns the game id.
	 * @return the game id.
	 */
	int getGameId();

	/**
	 * Returns the version id.
	 * @return the version id.
	 */
	int getVersionId();

	/**
	 * Returns the host id.
	 * @return the host id.
	 */
	int getHostId();

	/**
	 * Returns the status.
	 * @return the status.
	 */
	GameStatus getStatus();

	/**
	 * Sets the id.
	 * @param id the id to set.
	 */
	void setId(int id);

	/**
	 * Sets the name.
	 * @param name the name to set.
	 */
	void setName(String name);

	/**
	 * Sets the game id.
	 * @param gameId the game id to set.
	 */
	void setGameId(int gameId);

	/**
	 * Sets the version id.
	 * @param versionId the version id to set.
	 */
	void setVersionId(int versionId);

	/**
	 * Sets the host id.
	 * @param hostId the host id to set.
	 */
	void setHostId(int hostId);

	/**
	 * Sets the status.
	 * @param status the status to set.
	 */
	void setStatus(GameStatus status);
}
